Virtualization of services can include creating software implementations of hardware such as computers, networking equipment, or other devices, and deploying software that corresponds to modules, applications, application components, and/or hardware controllers to the software implementations of the hardware. Thus, virtualization can be used to convert a physical network built by multiple hardware devices into a software implementation of a network. Similarly, hardware devices can be converted into software implementations of the devices, and services that are tightly coupled to hardware can be converted into loosely coupled applications or modules that can be hosted or executed by common off-the-shelf (“COTS”) hardware.
Virtualization can be used to reduce costs of activating a service and/or for other reasons. In the context of service activation, virtualization can allow services and hardware to be decoupled, which can obviate the need to obtain a hardware-software device that provides the service. Rather, software code for providing the service can be written and deployed to COTS hardware. This approach can reduce the lead time from service conception to activation.